// 注册页逻辑

import axios from "axios";
import {$} from './utils.js';

// 点击发送邮箱验证码
$('.btn-primary').onclick = function (){
    // 获取输入的邮箱
    let email = $('#email').value;

    // 验证邮箱格式 '2239222721@qq.com'
    let reg = /^\w{6,20}@[0-9a-zA-Z]{1,12}(\.[a-z]{2,3}){1,2}$/; 
    if (!reg.test(email)) {
        alert('邮箱格式错误！');
        return;// 结束程序
    }

    // 发送请求
    axios({
        method: 'post',
        url: 'http://localhost:9999/users/sendmail',
        data: {email}
    })
    .then((res)=>{
        alert(res.data.msg);
    })
    .catch(()=>{
        alert('邮件发送失败，请重试！');
    });
};

// 点击发送注册请求
$('.btn-info').onclick = function (){
    // 获取注册信息
    let username = $('#user').value;
    let password = $('#pass').value;
    let nickname = $('#nick').value;
    let email = $('#email').value;
    let code = $('#code').value;
    let age = $('#age').value;
    let sex = $('#sex').value;

    // 校验数据格式
    let reg = /\s+/;

    let reg1 = /^\w{6,16}$/;
    if (!reg1.test(username)) {
        alert('账号格式错误！');
        return;
    }
    if (!reg1.test(password)) {
        alert('密码格式错误！');
        return;
    }

    let reg2 = /.{2,8}/;
    if (reg.test(nickname)) {
        alert('昵称不能包含空格！');
        return;
    }
    if (!reg2.test(nickname)) {
        alert('昵称格式错误！');
        return;
    }

    let reg3 = /^\w{6,20}@[0-9a-zA-Z]{1,12}(\.[a-z]{2,3}){1,2}$/; 
    if (!reg3.test(email)) {
        alert('邮箱格式错误！');
        return;// 结束程序
    }

    let reg4 = /^\d{2,8}$/;
    if (!reg4.test(code)) {
        alert('验证码格式错误！');
        return;// 结束程序
    }

    let reg5 = /^\d{1,3}$/;
    if (!reg5.test(age)) {
        alert('年龄格式错误！');
        return;// 结束程序
    }

    let reg6 = /^[男女妖]$/;
    if (!reg6.test(sex)) {
        alert('请选择性别！');
        return;// 结束程序
    }

    // 发送注册请求
    axios({
        method: 'post',
        url: 'http://localhost:9999/users/register',
        data:{username,password,nickname,email,code,sex,age}
    })
    .then((res)=>{
        alert(res.data.msg);
        if (res.data.code === 1) {
            // 注册成功，跳转到登录页
            location.href = './login.html';
        }
    })
    .catch(()=>{
        alert('注册失败，请重试！');
    });
};
